The invention is generally related to computers and computer software. More specifically, the invention is generally related to the display of and navigation between hypertext documents with browser computer programs and the like.
The amount and variety of information that can be accessed through a computer continues to increase at an astounding rate. The Internet, in particular, has enabled computer users to access a wide variety of information from other computers located all over the world.
Much of the information accessible via the Internet is organized into hypertext documents, which are typically documents formatted in a language known as Hypertext Markup Language (HTML), and which are accessed via a segment of the Internet known as the World Wide Web. Hypertext documents typically include one or more embedded xe2x80x9chypertext linksxe2x80x9d that an end user can select to either jump to different documents, or to jump to different locations within the same document. Each hypertext document typically is identified by the storage location (known as a Uniform Resource Locator (URL)) at which the document is stored, with a hypertext link to a particular document, or xe2x80x9ctargetxe2x80x9d, specifying the storage location of that document so that, upon selection of the link, that document may be retrieved.
A wide variety of other information such as text, graphics, video, sound, and animation may be integrated into hypertext documents, and moreover, these documents can be organized into xe2x80x9csitesxe2x80x9d, typically maintained by a single entity, that collect multiple related documents together in a coherent fashion. Furthermore, due to the immense popularity of the World Wide Web, many private computer networks now also support hypertext documents, as do a number of existing computer operating systems and computer software applications.
A computer program, often referred to as a browser, is typically used to navigate between and through hypertext documents. With a browser, an end user can use a mouse or other pointing device to point and click on links such as highlighted text, images or other user interface components (e.g., buttons) in documents to navigate to different documents and/or to different locations within the same document.
Many browsers also support the use of bookmarks (also sometimes referred to as aliases, shortcuts or favorites), through which a user can maintain a list of favorite sites or documents that a user expects to revisit in the future. Retrieving a bookmarked document at a later date then only requires the user to locate the bookmark corresponding to a desired document in the list, and then select that bookmark to initiate retrieval of the document.
Conventional hypertext links and bookmarks may both be characterized as single-target links. Specifically, a conventional hypertext link or bookmark is associated with a single target, such that any time such a hypertext link or bookmark is activated, the document stored at its associated target is retrieved.
However, oftentimes there may be several targets relevant to a particular type of information that a user wishes to retrieve. For example, it is common for many web sites to be xe2x80x9cmirroredxe2x80x9d, where multiple identical copies of the documents in a web site are stored on multiple computers (also known as xe2x80x9cserversxe2x80x9d) accessed at different storage locations to permit a greater number of users to access such documents at any given time. As another example, it may be desirable to provide multiple copies of a document in several languages so that, for example, a user who speaks English can retrieve an English-language version of a document, while a user who speaks Spanish can retrieve a Spanish-language version.
With conventional hypertext links and bookmarks limited to single targets, multiple hypertext links or bookmarks often must be used to support multiple targets for a given topic or type of information. If multiple hypertext links are displayed in a given hypertext document, however, the document may become relatively cluttered, and hence less visually appealing. Similarly, bookmarking multiple targets can lead to cluttering up of a bookmark list, often making it more difficult for a user to find specific bookmarks in the list.
Perhaps more importantly, however, is the fact that the use of multiple single-target links to provide access to multiple targets requires some degree of user effort and decision making to select the most appropriate target among several alternatives. Just the fact that a user has to select between multiple links interrupts browsing, and often leads to decreased productivity. Furthermore, having a user manually select between multiple links introduces the possibility of human error, since a user may initially select the wrong link and have to navigate back to the original document, and then to another of the available choices.
Moreover, in many instances, the user may not have sufficient information to make a reasonable guess as to which is the most appropriate link to take. For example, most users desire to retrieve documents as quickly as possible. Thus, with mirrored web sites, a user is often encouraged to select a site that is closest geographically to the user, since it is presumed that the amount of xe2x80x9ctrafficxe2x80x9d on the Internet between a user and a server decreases the closer the server is to the user. The speed at which a document may be retrieved, however, can also vary significantly depending upon other factors such as the workload of the server, the time of day, the actual amount of traffic on the portion of the Internet between the user and the server, etc. Without knowing these factors in advance, a user is often left picking a target at random, or simply based upon geographical proximity. As often as not, the user will not select the optimum server to handle his or her request, and may waste valuable time connected to a sub-optimum server.
Another difficulty with single-target links is that oftentimes documents stored at particular storage locations can become unretrievable, e.g., if the documents were moved to other storage locations, or if the documents were completely removed. As a result, any single-target link pointing to an unretrievable document becomes xe2x80x9cstalexe2x80x9d and unusable. A user often cannot recognize a stale link without first attempting to access its target, and then, if unsuccessful, attempting to locate the information by accessing other targets. This xe2x80x9cwait and seexe2x80x9d approach can often cause a great deal of user frustration and waste a significant amount of the user""s time.
Attempts have been made to enable different documents to be retrieved in different circumstances in response to user selection of a single-target link. For example, some conventional web servers detect the brand of browser that a particular user is using, and then send back a particular version of a document optimized for that browser. Often, this requires that the servers obtain information from the user, typically in the form of xe2x80x9ccookiesxe2x80x9d that may be requested by the servers. However, server-side document selection suffers from the drawback that additional processing is required to process each user request, which reduces the workload capacity of a server. Furthermore, users can disable the transmission of cookies and prevent a server from learning specific information about a user, thereby inhibiting a server from selecting from different documents in response to a particular request.
Consequently, the limitation of conventional hypertext links and bookmarks to single targets can adversely impact user productivity and lead to user frustration.
The invention addresses these and other problems associated with the prior art by providing an apparatus, program product, and method that utilize a multi-target link to selectively access data located at one or more of a plurality of storage locations associated with the link. Thus, when a user activates a particular multi-target link, a request may be forwarded to different storage locations in different circumstances to optimize utilization of the link, rather than the request being forwarded to the same single storage location as occurs with conventional hypertext links and bookmarks.
A multi-target link may be implemented as a hypertext link defined by a hypertext link definition embedded in a hypertext document, or as a bookmark for use in a custom bookmark list for a user. Moreover, various types of data, including hypertext documents, files, and the like, may be accessed from one or more of the storage locations for a multi-target link.
By associating more than one storage location with a hypertext link or bookmark, a wide variety of unique features may be supported.
For example, in some implementations, a selected storage location may be selected from the plurality of storage locations for a multi-target link based upon a predetermined selection criteria. As one example, the version type of documents stored at different storage locations may be used to select a particular type of document, e.g., so that a user could specify that he or she wanted to view a text-only version of a document rather than an image-enabled version. As another example, the relative access times for different storage locations may be used to select the storage location to optimize the retrieval of a document from a fastest, or more responsive, location. As yet another example, the relative ages of the documents at different storage locations may be used to select the storage location having the most recent and up-to-date document.
As a further example, a chronological criteria may be used to retrieve documents from different storage locations at different times. This would permit a user to, for example, retrieve a current market conditions document while a stock market was open, but to retrieve a daily summary document once the market was closed. As another example, the previously-viewed status of different documents may be used to select the storage location to favor the retrieval of new documents over previously-used documents. Furthermore, the popularity of different documents may be used to select the storage location to favor more popular documents over others. Whether or not different documents are sanctioned or specifically not sanctioned, e.g., by a third party, may also be used to select a particular storage location over others.
As yet another example, local user settings may be relied upon to tailor the selection of a specific storage location, e.g., to select a storage location based upon the user""s default language or character set, the user""s skill level, etc. Still further, the current context at the time the user activates a multi-target link may be used to select a storage location, e.g., to permit different documents to be accessed based upon what other documents have been accessed in the past.
A multi-target link may also be used to sequentially retrieve documents at different storage locations associated with the link, e.g., to permit an author to specify a desired sequence for a user to view multiple documents. A multi-target link may also be used to retrieve data from multiple storage locations at once, thus saving the user the effort of otherwise having to activate multiple links to retrieve data from the multiple storage locations.
Therefore, consistent with one aspect of the invention, data may be accessed from a computer by receiving user input directed to a multi-target link that identifies a plurality of storage locations associated therewith; and accessing data stored at a selected one of the plurality of storage locations. Consistent with another aspect of the invention, a hypertext document may be generated by authoring the hypertext document, and embedding within the hypertext document a multi-target hypertext link definition that identifies a plurality of storage locations associated therewith. Furthermore, consistent with another aspect of the invention, a program product may be provided that includes a hypertext document having embedded therein at least one multi-target hypertext link definition that identifies a plurality of storage locations associated therewith, and a signal bearing media bearing the hypertext document.
These and other advantages and features, which characterize the invention, are set forth in the claims annexed hereto and forming a further part hereof. However, for a better understanding of the invention, and of the advantages and objectives attained through its use, reference should be made to the Drawings, and to the accompanying descriptive matter, in which there is described exemplary embodiments of the invention.